import org.junit.After;
import org.junit.Before;
import org.junit.Test;

import static org.junit.Assert.*;

public class NGuessNumberTest {
    NGuessNumber gn;

    @Before
    public void setUp() throws Exception {
        this.gn = new NGuessNumber();
    }

    @After
    public void tearDown() throws Exception {
    }

    @Test
    public void generateAnswersTest() {
        assertTrue(isAnswersValid());
    }

    public boolean isAnswersValid() {
        for (int k = 0; k < 5; k++) {
            int[] answers = this.gn.generateAnswers();
            for (int i = 0; i < answers.length; i++) {
                if (answers[i] < 0 || answers[i] > 9) {
                    return false;
                }
            }

            for (int i = 0; i < answers.length; i++) {
                for (int j = i + 1; j < answers.length; j++) {
                    if (answers[i] == answers[j]) {
                        return false;
                    }
                }
            }
        }
        return true;
    }

    @Test
    public void getPlayerInputTest() {
        assertTrue(isPlayerInputValid());
    }

    private boolean isPlayerInputValid() {
        
        return true;
    }
    @Test
    public void compareGuessAnswerTest(){
        assertTrue(isValidcompareGuessAnswer());
    }

    private boolean isValidcompareGuessAnswer() {
        return true;
    }
}